package com.acp.dao.acpo;

import com.acp.model.Dict;

import java.util.List;
/**
 * All rights Reserved, Designed By 姑苏区政府大数据中心
 *
 * @version V1.0
 * @Title: null.java
 * @Package com.dci.controller.construction
 * @Description: 字典表接口
 * @author: 张星亮
 * @date: 2019/4/5
 * @Copyright: 2019 姑苏区政府大数据中心. All rights reserved.
 * 注意：本内容仅限于姑苏区政府大数据中心内部传阅，禁止外泄以及用于其他的商业目
 */
public interface DictMapper {
    /**
     * 删除
     * @param id
     * @return int 类型数字
     */
    int deleteByPrimaryKey(String id);

    /**
     * 新增
     * @param record
     * @return int 类型数字
     */
    int insert(Dict record);

    /**
     * 条件新增
     * @param record
     * @return int 类型数字
     */
    int insertSelective(Dict record);

    /**
     * 查询
     * @param id
     * @return Dict实体类
     */
    Dict selectByPrimaryKey(String id);

    /**
     * 条件修改
     * @param record
     * @return int 类型数字
     */
    int updateByPrimaryKeySelective(Dict record);

    /**
     * 修改
     * @param record
     * @return int 类型数字
     */
    int updateByPrimaryKey(Dict record);

    /**
     * 查询
     * @return list集合
     */
    List<String> selectByDistinct();

    /**
     * 通过code查询
     * @param type
     * @param code
     * @return string 类型字符串
     */
    String selectByTypeAndCode(String type, String code);

    /**
     * 通过type 查询
     * @param type
     * @return list集合
     */
    List<Dict> selectByType(String type);

    /**
     * 查询key
     * @param tableName
     * @return list集合
     */
    List<String> selectColumnKeyResult(String tableName);

    /**
     * 查询value
     * @param tableName
     * @return list集合
     */
    List<String> selectColumnValueResult(String tableName);

    /**
     * 新增
     * @param sql
     * @return int 类型数字
     */
    int insertObjectBatch(String sql);

    /**
     * 删除
     * @param sql
     * @return int 类型数字
     */
    int deleteObjectBatch(String sql);

    /**
     * 修改
     * @param sql
     * @return
     */
    int updateObjectBatch(String sql);
}